← Index
NYTProf Performance Profile   
For starman worker -M FindBin --max-requests 50 --workers 2 --user=kohadev-koha --group kohadev-koha --pid /var/run/koha/kohadev/plack.pid --daemonize --access-log /var/log/koha/kohadev/plack.log --error-log /var/log/koha/kohadev/plack-error.log -E deployment --socket /var/run/koha/kohadev/plack.sock /etc/koha/sites/kohadev/plack.psgi
  Run on Fri Jan 8 13:01:18 2016
Reported on Fri Jan 8 13:01:36 2016

Filename(eval 1105)[/usr/share/perl5/Sub/Quote.pm:5]
StatementsExecuted 129 statements in 696µs
Eval Invoked At/usr/share/perl5/Sub/Quote.pm line 5
Sibling evals1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
522127µs1.46msDBIx::Class::Storage::BlockRunner::::newDBIx::Class::Storage::BlockRunner::new
11115µs31µsSub::Quote::::BEGIN@4.2965 Sub::Quote::BEGIN@4.2965
1117µs7µsMethod::Generate::Constructor::::BEGIN@10.2966 Method::Generate::Constructor::BEGIN@10.2966
1116µs6µsDBIx::Class::Storage::BlockRunner::::BEGIN@74DBIx::Class::Storage::BlockRunner::BEGIN@74
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1{
222µs my $_QUOTED = ${$_[1]->{"\$_QUOTED"}};
31200ns my $_UNQUOTED = ${$_[1]->{"\$_UNQUOTED"}};
42108µs246µs
# spent 31µs (15+16) within Sub::Quote::BEGIN@4.2965 which was called: # once (15µs+16µs) by Sub::Quote::_clean_eval at line 4
no warnings 'closure';
# spent 31µs making 1 call to Sub::Quote::BEGIN@4.2965 # spent 16µs making 1 call to warnings::unimport
5
# spent 1.46ms (127µs+1.34) within DBIx::Class::Storage::BlockRunner::new which was called 5 times, avg 293µs/call: # 4 times (103µs+1.33ms) by DBIx::Class::Storage::DBI::dbh_do at line 855 of DBIx/Class/Storage/DBI.pm, avg 359µs/call # once (25µs+1µs) by DBIx::Class::Storage::DBI::dbh_do at line 56 of Sub/Defer.pm
sub DBIx::Class::Storage::BlockRunner::new {
6 $_QUOTED if 0;
74300ns $_UNQUOTED if 0;
8# BEGIN quote_sub PRELUDE
9package Method::Generate::Constructor;
10
# spent 7µs within Method::Generate::Constructor::BEGIN@10.2966 which was called: # once (7µs+0s) by Sub::Quote::_clean_eval at line 15
BEGIN {
1111µs $^H = "2018";
121400ns ${^WARNING_BITS} = "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377";
1315µs %^H = (
14 );
151279µs17µs}
# spent 7µs making 1 call to Method::Generate::Constructor::BEGIN@10.2966
16# END quote_sub PRELUDE
1742µs my $class = shift;
1841µs $class = ref($class) if ref($class);
1942µs if ($class ne "DBIx::Class::Storage::BlockRunner") {
20 if ($Moo::MAKERS{$class}) {
21 if ($Moo::MAKERS{$class}{constructor}) {
22 return $class->DBIx::Class::Storage::BlockRunner::SUPER::new(@_);
23 }
24 Moo->_constructor_maker_for($class);
25 return $class->new(@_);
26 } elsif ($INC{"Moose.pm"} and my $meta = Class::MOP::get_metaclass_by_name($class)) {
27 return $meta->new_object(
28 $class->can("BUILDARGS") ? $class->BUILDARGS(@_)
29 : $class->Moo::Object::BUILDARGS(@_)
30 );
31 }
32 }
3341µs my $args;
3447µs if ( scalar @_ == 1 ) {
35 unless ( defined $_[0] && ref $_[0] eq 'HASH' ) {
36 die "Single parameters to new() must be a HASH ref"
37 ." data => ". $_[0] ."\n";
38 }
39 $args = { %{ $_[0] } };
40 }
41 elsif ( @_ % 2 ) {
42 die "The new() method for $class expects a hash reference or a"
43 . " key/value list. You passed an odd number of arguments\n";
44 }
45 else {
4649µs $args = {@_};
47 }
4849µs if (my @missing = grep !exists $args->{$_}, qw(retry_handler storage wrap_txn)) {
49 die "Missing required arguments: ".join(', ', sort @missing);
50 }
5149µs my $new = bless({}, $class);;
5248µs $new->{"max_attempts"} = (
53 exists $args->{"max_attempts"}
54 ? $args->{"max_attempts"}
55 : "20"
56 );
5742µs if (exists $args->{"retry_debug"}) {
58 $new->{"retry_debug"} = $args->{"retry_debug"};
59 }
6043µs if (exists $args->{"retry_handler"}) {
6141µs do {
62410µs local $Method::Generate::Accessor::CurrentAttribute = {
63 init_arg => "retry_handler",
64 name => "retry_handler",
65 step => "isa check",
66 };
6741µs my $_error;
68 {
6983µs my $_old_error = $@;
7044µs if (!eval {
7141µs $@ = $_old_error;
7285µs do { local @_ = ($args->{"retry_handler"}); # BEGIN quote_sub PRELUDE
73package DBIx::Class::Storage::BlockRunner;
74
# spent 6µs within DBIx::Class::Storage::BlockRunner::BEGIN@74 which was called: # once (6µs+0s) by Sub::Quote::_clean_eval at line 79
BEGIN {
751900ns $^H = "133090";
761300ns ${^WARNING_BITS} = "UUUUUUUUUUUUUUUUU";
7715µs %^H = (
78 );
791161µs16µs}
# spent 6µs making 1 call to DBIx::Class::Storage::BlockRunner::BEGIN@74
80# END quote_sub PRELUDE
81
82421µs44µs (Scalar::Util::reftype($_[0])||'') eq 'CODE'
# spent 4µs making 4 calls to Scalar::Util::reftype, avg 1µs/call
83 or DBIx::Class::Exception->throw('retry_handler must be a CODE reference')
84 };
8542µs 1;
86 }) {
87 $_error = $@;
88 if (!ref $_error) {
89 $_error = "isa check for \"retry_handler\" failed: ".$_error;
90 }
91 }
9242µs $@ = $_old_error;
93 }
9443µs die $_error if $_error;
95}
96;
9743µs $new->{"retry_handler"} = $args->{"retry_handler"};
98 }
9943µs if (exists $args->{"storage"}) {
100 $new->{"storage"} = $args->{"storage"};
101 }
10243µs if (exists $args->{"wrap_txn"}) {
103 $new->{"wrap_txn"} = $args->{"wrap_txn"};
104 }
105413µs return $new;
106 }
10711µs $$_UNQUOTED = \&DBIx::Class::Storage::BlockRunner::new
108}
10914µs1;
110
111;